In some network applications, there may be a large pool of machine-type devices, among which only a few are simultaneously active. Such devices will typically use grant-free uplink transmission, and will employ short-packet transmission with a low modulation and coding scheme (MCS). Compressed sensing (CS) can be used in such applications for device activity detection.
Activity detection is an important feature of any uplink random access system. Activity detection involves detecting which devices are transmitting. CS is a tool for UE (user equipment, for example a machine-type device) detection in scenarios where UE activity is sparse in the sense that from a large number of UEs that could attempt to access the system at a given instant, typically a relatively small number are in fact attempting to access the system. In other words, a small number of UEs among a large pool of UEs are simultaneously active.
Where an active device spreads its data symbols over several chips using a spreading signature of moderate length, the receiver uses the entire received spread signal to detect the fact that the device is transmitting, i.e. detect the fact that the device is active, and also to decode the active device's data.
With CS, an underdetermined set of equations is expressed in terms of an unknown sparse vector. The number of nonzero elements in the unknown vector is much less than the number of observations.
A standard CS problem involves solving an underdetermined set of (noisy or noiseless) equations in terms of an unknown sparse vector based on a number of observations. The number of nonzero elements in the unknown vector is much less than the number of observations. The set of (noisy) equations can be expressed as follows:yM×1=PM×N·hN×1+nM×1 where the elements of the equation are:    yM×1=is a set of M observations;    hN×1 is a set of N unknowns;    PM×N is a matrix that defines linear combinations of the unknowns; and    nM×1 is a set of noise components,with K<<M<N, where K is the number of nonzero elements of h.
The CS problem is usually cast as an optimization problem. One typical example is the following convex optimization problem:ĥ=½∥y−Ph∥ 2/2+λ∥h∥1 where ∥⋅∥2 and ∥⋅∥1 denote I2-norm and I1-norm of a vector, respectively, defined as∥x∥2=√{square root over (Σi|xi|2)} and ∥x∥1=Σi∥xi∥
The UE detection problem can be recast as a CS problem based on the following set of equations:yM×1=PM×N·hN×1+nM×1 where the elements of the equation are:    yM×1=is a set of M observations;    hN×1 is a set of N unknowns representing the vector of channel coefficients of the UEs; each active UE corresponds to a nonzero element in h and each inactive UE corresponds to a zero element in h. It is noted that h is not the channel per se, but is a CS determined single value that represents a fixed channel over the entire pilot sequence; following CS detection, h is the CS detection output;    pM×N is a pilot matrix, each column of which represents the pilot vector of a specific UE;    nM×1 is a set of noise components;with K<<M<N, where    K is the number of nonzero elements of h, which is equal to the number of UEs that are active at a given instant;    N is the size of the pool of UEs that might be active; and    M is the number of observations.
A corresponding approach is based on block-wise compressed sensing. Blockwise CS is formulated as L underdetermined sets of equations in terms of L unknown sparse vectors with the same sparsity patternYM×L=PM×N·XN×L+ZM×L {circumflex over (X)}=½∥Y−PX∥ 2/2+λ·norm(X)where X is a row-sparse matrix and norm(X) is a row-sparsifying norm. As an example, norm(X) can be defined as norm(X)=Σi√{square root over (Σj∥xi,j∥2)}.
It can be seen that in both cases described above, there are two terms in the convex optimization problem. The second term is a convex function which ensures the vector x (or the matrix X) that minimizes the optimization objective is as sparse (or row-sparse) as possible. A represents a weighting factor between the two terms in the optimization.